package com.itheima.stock.config;

import com.itheima.stock.pojo.vo.StockInfoConfig;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import com.itheima.stock.utils.IdWorker;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

/**
 * 定义公共配置 bean
 */
@Configuration
@EnableConfigurationProperties({StockInfoConfig.class}) // 开启相关配置对象的加载
public class CommonConfig {

    /**
     * 基于雪花算法，保证ID唯一
     * @return
     */
    @Bean
    public IdWorker idWorker () {
        /**
         * 参数1：机器ID
         * 参数2：机房ID
         * 机房和机器编号一般由运维人员进行唯一性规划
         */
        return new IdWorker(1l, 2l);
    }
}
